package com.ruoyi.evaluate.infoprojectevaluateindex.domain;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

import java.util.List;

/**
 * 自评中的指标对象 info_project_evaluate_index
 *
 * @author ruoyi
 * @date 2022-02-24
 */
public class InfoProjectEvaluateIndex extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * 编号
     */
    private Long id;

    /**
     * 一级指标
     */
    @Excel(name = "一级指标")
    private String targetOne;

    /**
     * 二级指标
     */
    @Excel(name = "二级指标")
    private String targetTwo;

    /**
     * 三级级指标
     */
    @Excel(name = "三级级指标")
    private String targetThree;

    /**
     * 指标值
     */
    @Excel(name = "指标值")
    private String targetValue;

    /**
     * 实际完成值
     */
    @Excel(name = "实际完成值")
    private String finishValue;

    /**
     * 完成情况
     */
    @Excel(name = "完成情况")
    private Integer finishStatus;

    /**
     * 分值
     */
    @Excel(name = "分值")
    private String targetScore;
    /**
     * 得分
     */
    @Excel(name = "得分")
    private Long itemTotalScore;

    /**
     * 偏差原因
     */
    @Excel(name = "偏差原因")
    private String deviateReason;

    /**
     * 得到的分值
     */
    @Excel(name = "得到的分值")
    private String itemGetScore;

    /**
     * 项目自评表中的Id
     */
    @Excel(name = "项目自评表中的Id")
    private Long projectEvaluateId;

    /**
     * 上传文件地址
     */
    @Excel(name = "上传文件地址")
    private String  reportUrl;

    /**
     * 上传文件名称
     */
    @Excel(name = "上传文件名称")
    private String  reportName;

    /**
     * 评价填报里偏差原因
     */
    @Excel(name = "评价填报里偏差原因")
    private String  reasonForEvaluation;

    /**
     * 二级指标列表（冗余）
     */
    private List<InfoProjectEvaluateIndex> targetTwoList;

    /**
     * 三级指标列表（冗余）
     */
    private List<InfoProjectEvaluateIndex> targetThreeList;

    public String getReasonForEvaluation() {
        return reasonForEvaluation;
    }

    public void setReasonForEvaluation(String reasonForEvaluation) {
        this.reasonForEvaluation = reasonForEvaluation;
    }

    public String getReportUrl() {
        return reportUrl;
    }

    public void setReportUrl(String reportUrl) {
        this.reportUrl = reportUrl;
    }

    public String getReportName() {
        return reportName;
    }

    public void setReportName(String reportName) {
        this.reportName = reportName;
    }

    public String getTargetScore() {
        return targetScore;
    }

    public void setTargetScore(String targetScore) {
        this.targetScore = targetScore;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getId() {
        return id;
    }

    public void setTargetOne(String targetOne) {
        this.targetOne = targetOne;
    }

    public String getTargetOne() {
        return targetOne;
    }

    public void setTargetTwo(String targetTwo) {
        this.targetTwo = targetTwo;
    }

    public String getTargetTwo() {
        return targetTwo;
    }

    public void setTargetThree(String targetThree) {
        this.targetThree = targetThree;
    }

    public String getTargetThree() {
        return targetThree;
    }

    public void setTargetValue(String targetValue) {
        this.targetValue = targetValue;
    }

    public String getTargetValue() {
        return targetValue;
    }

    public void setFinishValue(String finishValue) {
        this.finishValue = finishValue;
    }

    public String getFinishValue() {
        return finishValue;
    }

    public void setFinishStatus(Integer finishStatus) {
        this.finishStatus = finishStatus;
    }

    public Integer getFinishStatus() {
        return finishStatus;
    }

    public void setItemTotalScore(Long itemTotalScore) {
        this.itemTotalScore = itemTotalScore;
    }

    public Long getItemTotalScore() {
        return itemTotalScore;
    }

    public void setDeviateReason(String deviateReason) {
        this.deviateReason = deviateReason;
    }

    public String getDeviateReason() {
        return deviateReason;
    }

    public void setItemGetScore(String itemGetScore) {
        this.itemGetScore = itemGetScore;
    }

    public String getItemGetScore() {
        return itemGetScore;
    }

    public void setProjectEvaluateId(Long projectEvaluateId) {
        this.projectEvaluateId = projectEvaluateId;
    }

    public Long getProjectEvaluateId() {
        return projectEvaluateId;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
                .append("id", getId())
                .append("targetOne", getTargetOne())
                .append("targetTwo", getTargetTwo())
                .append("targetThree", getTargetThree())
                .append("targetValue", getTargetValue())
                .append("finishValue", getFinishValue())
                .append("finishStatus", getFinishStatus())
                .append("itemTotalScore", getItemTotalScore())
                .append("deviateReason", getDeviateReason())
                .append("itemGetScore", getItemGetScore())
                .append("remark", getRemark())
                .append("createBy", getCreateBy())
                .append("createTime", getCreateTime())
                .append("updateBy", getUpdateBy())
                .append("updateTime", getUpdateTime())
                .append("projectEvaluateId", getProjectEvaluateId())
                .append("targetScore", getTargetScore())
                .append("reportUrl", getReportUrl())
                .append("reportName", getReportName())
                .append("reasonForEvaluation", getReasonForEvaluation())
                .toString();
    }

    public List<InfoProjectEvaluateIndex> getTargetTwoList() {
        return targetTwoList;
    }

    public void setTargetTwoList(List<InfoProjectEvaluateIndex> targetTwoList) {
        this.targetTwoList = targetTwoList;
    }

    public List<InfoProjectEvaluateIndex> getTargetThreeList() {
        return targetThreeList;
    }

    public void setTargetThreeList(List<InfoProjectEvaluateIndex> targetThreeList) {
        this.targetThreeList = targetThreeList;
    }
}
